542.01矩阵-中等问题描述给定一个由0和1组成的矩阵mat,请输出一个大小相同的矩阵,其中每一个格子是mat中对应位置元素到最近的0的距离。两个相邻元素间的距离为1。示例1:输入:mat=[[0,0,0],[0,1,0],[0,0,0]]输出:[[0,0,0],[0,1,0],[0,0,0]]示例2:输入:mat=[[0,0,0],[0,1,0],[1,1,1]]输出:[[0,0,0],[0,1,0],[1,2,1]]提示:m==mat.lengthn==mat[i].length11mat[i][j]iseither0or1.mat中至少有一个0解题思路与代码实现一采用BFS搜索解题:创
文章目录一、题目二、题解一、题目2520.CounttheDigitsThatDivideaNumberGivenanintegernum,returnthenumberofdigitsinnumthatdividenum.Anintegervaldividesnumsifnums%val==0.Example1:Input:num=7Output:1Explanation:7dividesitself,hencetheansweris1.Example2:Input:num=121Output:2Explanation:121isdivisibleby1,butnot2.Since1occu
🚀算法题🚀🌲算法刷题专栏|面试必备算法|面试高频算法🍀🌲越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨🌲作者简介:硕风和炜,CSDN-Java领域新星创作者🏆,保研|国家奖学金|高中学习JAVA|大学完善JAVA开发技术栈|面试刷题|面经八股文|经验分享|好用的网站工具分享💎💎💎🌲恭喜你发现一枚宝藏博主,赶快收入囊中吧🌻🌲人生如棋,我愿为卒,行动虽慢,可谁曾见我后退一步?🎯🎯🚀算法题🚀🍔目录🚗知识回顾🚩题目链接⛲题目描述🌟求解思路&实现代码&运行结果⚡暴力法🥦求解思路🥦实现代码🥦运行结果⚡记忆化搜索🥦求解思路🥦实现代码🥦运行结果⚡动态规划🥦求解思路🥦实现代码🥦运行结果💬共勉🚗知
67.二进制求和难度:简单题目给你两个二进制字符串a和b,以二进制字符串的形式返回它们的和。示例1:输入:a="11",b="1"输出:"100"示例2:输入:a="1010",b="1011"输出:"10101"提示:1a和b仅由字符'0'或'1'组成字符串如果不是"0",就不含前导零个人题解思路:从后往前遍历字符逐个判断即可最后考虑是否进位sum&1等价于sum%2classSolution{publicStringaddBinary(Stringa,Stringb){StringBuilderans=newStringBuilder();intca=0;for(inti=a.length
文章目录前言例题方法一方法二方法三方法四总结前言 在刷题过程中遇到正负数交替问题,想了好久也没想明白,查阅了好多资料,发现有好几种方法,写这篇文章总结一下。 解决办法主要是利用奇偶性,以及与-1的关系。例题题目本题要求编写程序,计算交错序列1-2/3+3/5-4/7+5/9-6/11+…的前N项之和。输入格式:输入在一行中给出一个正整数N。输出格式:在一行中输出部分和的值,结果保留三位小数。输入样例:5输出样例:0.917方法一利用分子奇偶性,加减实现#includeintmain(){ intn; intson=1,mom=1; doublesum=0; scanf("%d",&n);
向二维数组输入数据voidscanfa(inta[N][N])//向二维数组输入数据{ inti=0; intj=0; for(i=0;i求两条对角线上的各元素之和intsuma(inta[N][N])//求两条对角线上的各元素之和{ inti=0; intsum=0; for(i=0;i完整代码#include#defineN3voidscanfa(inta[N][N])//向二维数组输入数据{ inti=0; intj=0; for(i=0;i
如果你对快慢指针,环形链表有疑问,可以参考下面这篇文章,了解什么是环形链表后,再做这道题会非常简单,也更容易理解下面的图片公式等。LeetCode-141.环形链表(C语言,快慢指针,配图)-CSDN博客 上述文章总结:如果一个链表是环形链表,采用快慢指针,快慢指针会在环中相遇,从而得到相遇点。理论基础: 当链表是环形链表的时候,一个指针从入口位置开始,一个指针从相遇点开始,他们相遇的那个点就是入口点。我们可以从下面这张图中了解。代码展示:structListNode*detectCycle(structListNode*head){structListNode*fast=
例题:编写一个函数fun1(),用来求n个a(即aa...a)的值。在主函数中输入两个正整数a和n,调用函数fun1(),求a+aa+aaa+...+aa...a(n个a)的值,并输出结果。思路分析我们阅读完题意之后,代入一个数字试试看。当a为1的时候,可以写出以下的式子:1+11+111+1111+......;然后求他们的和。通过观察可以得到一个规律: 第一个数是一位数,第二个数是两位数,第三个数是三位数,依次增加位数,第四个数就是四位数;无论是第几个数,都是由同一个数字构成的。我们用当a为1,n为3为例进行案例讲解1+11+111=123;代码如下#includeintfun1(intn
一、有效的括号20.有效的括号(题目链接)思路:1)括号的顺序匹配:用栈实现,遇到左括号入,遇到右括号出(保证所出的左括号与右括号对应),否则顺序不匹配。2)括号的数量匹配:1>左括号大于右括号:用栈实现,遇到左括号入,遇到右括号出,遍历完字符数组,此时栈不为空,则说明左括号数量大于右括号;2>右括号大于左括号:遇到右括号出时,判断栈是否为空,若此时栈为空,说明右括号数量大于左括号;typedefcharSDateType;typedefstructStack{ SDateType*a; inttop; intcapacity;}Stack;//初始化栈和销毁栈voidInitStack(St
一.题目描述求一个3X3的整型矩阵对角线元素之和二.代码实现#define_CRT_SECURE_NO_WARNINGS#includeintmain(){ intarr[3][3]={0}; for(inti=0;i 三.运行结果创作不易,如果这份博客👍对你有帮助,可以给博主一个免费的点赞以示鼓励。欢迎各位帅哥美女点赞👍评论⭐收藏⭐,谢谢!!!如果有什么疑问或不同的见解,欢迎在评论区留言哦👀。祝各位生活愉快⭐